package cn.edu.lcu.cs.javaprogramming.annotations;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

/**
 * 用于限制整型字段取值范围的注解，可作用于字段上以限定其最小值和最大值
 *
 * @author ling
 * @date 2022/5/7 21:42
 */
@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.FIELD)
public @interface Range {
    /**
     * 定义字段允许的最小值，默认为 0
     *
     * @return int 类型，表示字段的最小允许值
     */
    int min() default 0;

    /**
     * 定义字段允许的最大值，默认为 100
     *
     * @return int 类型，表示字段的最大允许值
     */
    int max() default 100;
}